package com.xwaf.platform.system.api.service.pay;

import java.io.IOException;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.xwaf.platform.system.api.entity.pay.wft.WftRequest;

public interface WftService {

	/**
	 * 
	 * <p>
	 * 支付请求
	 * <p>
	 * 
	 * @author 李聪 <br>
	 * @email xwaf_love@yeah.net <br>
	 * @since JDK 1.8<br>
	 * @date 2019年12月27日 下午8:33:32 <br>
	 * @see 无<br>
	 * @param req
	 * @param resp
	 * @param openid
	 * @param wft
	 * @return
	 * @throws Exception
	 * @demo <br>
	 */
	public Map<String, String> pay(HttpServletRequest req, HttpServletResponse resp, String openid, WftRequest wft)
			throws Exception;

	/**
	 * 
	 * <p>
	 * 订单查询
	 * <p>
	 * 
	 * @author 李聪 <br>
	 * @email xwaf_love@yeah.net <br>
	 * @since JDK 1.8<br>
	 * @date 2019年12月27日 下午8:33:17 <br>
	 * @see 无<br>
	 * @param req
	 * @param resp
	 * @throws ServletException
	 * @throws IOException
	 * @demo <br>
	 */
	public void query(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException;

	/**
	 * 
	 * <p>
	 * 退款查询
	 * <p>
	 * 
	 * @author 李聪 <br>
	 * @email xwaf_love@yeah.net <br>
	 * @since JDK 1.8<br>
	 * @date 2019年12月27日 下午8:33:09 <br>
	 * @see 无<br>
	 * @param req
	 * @param resp
	 * @throws ServletException
	 * @throws IOException
	 * @demo <br>
	 */
	public void refundQuery(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException;

	/**
	 * 
	 * <p>
	 * 退款
	 * <p>
	 * 
	 * @author 李聪 <br>
	 * @email xwaf_love@yeah.net <br>
	 * @since JDK 1.8<br>
	 * @date 2019年12月27日 下午8:32:54 <br>
	 * @see 无<br>
	 * @param req
	 * @param resp
	 * @throws ServletException
	 * @throws IOException
	 * @demo <br>
	 */
	public void refund(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException;
}
